#pragma once


#include "NFComm/NFPluginModule/NFIPlugin.h"
#include "NFComm/NFPluginModule/NFIPluginManager.h"
#include "NFComm/NFPluginModule/NFIRankModule.h"
#include "NFComm/NFPluginModule/NFIKernelModule.h"


class NFIRankTestModule : public NFIModule
{

};

class NFRankTestModule : public NFIRankTestModule
{
public:
    NFRankTestModule(NFIPluginManager* p)
    {
        pPluginManager = p;
        index = 0;
    }
public:
    virtual bool Init();
    virtual bool AfterInit();

    virtual bool Execute();

    virtual bool BeforeShut();
    virtual bool Shut();
public:
    virtual void BuildRankValue();
    virtual void RangeByIndexReturnFunc(const NFGUID& self, NFMsg::PackNoSqlParam& nosqlParam, const std::string& strUseData);
protected:
    std::map<NFGUID, std::string> mapGuidName;
    int index;
protected:
    NFIRankModule* m_pRankModule;
    NFIKernelModule* m_pKernelModule;
    NFILogModule* m_pLogModule;
};